package com.liheng.yygh.cmn.listener;

import com.alibaba.excel.context.AnalysisContext;
import com.alibaba.excel.event.AnalysisEventListener;
import com.liheng.yygh.cmn.mapper.DictMapper;
import com.liheng.yygh.model.cmn.Dict;
import com.liheng.yygh.vo.cmn.DictEeVo;
import org.springframework.beans.BeanUtils;
import org.springframework.context.annotation.Bean;

/**
 * @program: yygh_partn
 * @description: 监听器
 * @author: _LiHeng
 * @create: 2022-12-27 20:54
 **/
public class DictListener  extends AnalysisEventListener<DictEeVo> {

    /**
     * 创建一个Mapper，或者添加注解交给Spring管理@SpringScan
     * 文档中并不建议交给Spring管理
     */
    private DictMapper dictMapper;

    public DictListener(DictMapper dictMapper) {
        this.dictMapper = dictMapper;
    }

    /**
     * 从第二行开始一行一行的读取数据
     * @param dictEeVo
     * @param analysisContext
     */
    @Override
    public void invoke(DictEeVo dictEeVo, AnalysisContext analysisContext) {
        //由于前端传入的是VO实体类,new一个实体类进行接收转换
        Dict dict = new Dict();
        dict.setIsDeleted(0);
        //使用工具了可以快速进行copy,无需在进行set get操作
        BeanUtils.copyProperties(dictEeVo,dict);
        //调用方法添加数据到数据库中
        dictMapper.insert(dict);

    }

    @Override
    public void doAfterAllAnalysed(AnalysisContext analysisContext) {

    }
}
